package com.activitiFlow.service;

import org.activiti.engine.runtime.ProcessInstance;

/**
 * 流程执行处理类
 */
public interface IRuntimeBiz {

	/**
	 * 启动流程的一个运行实例
	 * @param borrowId 申请单的id
	 * @param processkey 流程key
	 * @param transactor 办理人code
	 * @return 
	 */
	ProcessInstance saveStartProcess(String borrowId, String processkey,String transactor);
	

	/**
	 * 根据processInstanceId查询任务执行对象信息
	 * @param processInstanceId  流程实例Id
	 * @return
	 */
	ProcessInstance getProcessInstanceById(String processInstanceId);

	/**
	 * 根据任务ID获取相关的业务系统id
	 * @param taskId
	 * @return
	 */
	String getBusinessIdByTaskId(String taskId);
	

	/**
	 * 删除任务对象的流程变量
	 * @param executionId
	 * @param usercode
	 */
	void removeVariable(String executionId, String usercode);
}
